package com.sg.service.biz.app.nb;

import cn.hutool.core.bean.BeanUtil;
import com.sg.dto.biz.app.req.*;
import com.sg.dto.biz.app.res.*;
import org.apache.skywalking.apm.toolkit.trace.Tag;
import org.apache.skywalking.apm.toolkit.trace.Tags;
import org.apache.skywalking.apm.toolkit.trace.Trace;
import org.springframework.stereotype.Service;

/**
 * @author ： 手工接入方法
 * @version 1.0
 * @since 2022/5/28 15:32
 */
@Service
public class NbTargetCalc {
    /**
     * code:receptionService
     * name:M3-约定父子中周期数据模型
     * desc:undefined
     * gen by moon at 3/12/2024, 8:41:47 PM
     **/
    @Trace(operationName = "M3-约定父子中周期数据模型")
    @Tags({@Tag(key = "参数", value = "arg[0]"),
            @Tag(key = "返回值", value = "returnedObj")})
    public ImplementFiveReceivingFieldRespDto implementFiveReceivingField(ImplementFiveReceivingFieldReqDto reqDto) {
        return BeanUtil.toBean(reqDto, ImplementFiveReceivingFieldRespDto.class);
    }

    /**
     * code:receptionService
     * name:M3接收目标内容属性信息出参
     * desc:undefined
     * gen by moon at 3/14/2024, 3:26:54 AM
     **/
    @Trace(operationName = "M3接收目标内容属性信息出参")
    @Tags({@Tag(key = "参数", value = "arg[0]"),
            @Tag(key = "返回值", value = "returnedObj")})
    public ImplementAcceptFieldRespDto implementAcceptField(ImplementAcceptFieldReqDto reqDto) {
        return BeanUtil.toBean(reqDto, ImplementAcceptFieldRespDto.class);
    }

    /**
     * code:receptionService
     * name:约定数值：0/1/2
     * desc:undefined
     * gen by moon at 3/14/2024, 3:28:00 AM
     **/
    @Trace(operationName = "约定数值：0/1/2")
    @Tags({@Tag(key = "参数", value = "arg[0]"),
            @Tag(key = "返回值", value = "returnedObj")})
    public ImplementOutputParametersRespDto implementOutputParameters(ImplementOutputParametersReqDto reqDto) {
        return BeanUtil.toBean(reqDto, ImplementOutputParametersRespDto.class);
    }

    /**
     * code:receptionService
     * name:01温馨提示：请录入该目标的进度、实际值
     * desc:undefined
     * gen by moon at 3/16/2024, 3:02:20 AM
     **/
    @Trace(operationName = "01温馨提示：请录入该目标的进度、实际值")
    @Tags({@Tag(key = "参数", value = "arg[0]"),
            @Tag(key = "返回值", value = "returnedObj")})
    public ImplementAcceptFieldByStandardDataRespDto implementAcceptFieldByStandardData(ImplementAcceptFieldByStandardDataReqDto reqDto) {
        return BeanUtil.toBean(reqDto, ImplementAcceptFieldByStandardDataRespDto.class);
    }

    /**
     * code:receptionService
     * name:M3接收字段
     * desc:undefined
     * gen by moon at 3/16/2024, 4:37:25 PM
     **/
    @Trace(operationName = "M3接收字段")
    @Tags({@Tag(key = "参数", value = "arg[0]"),
            @Tag(key = "返回值", value = "returnedObj")})
    public ImplementSevenReceivingFieldRespDto implementSevenReceivingField(ImplementSevenReceivingFieldReqDto reqDto) {
        return BeanUtil.toBean(reqDto, ImplementSevenReceivingFieldRespDto.class);
    }

    /**
     * code:receptionService
     * name:M3约定：是与否
     * desc:undefined
     * gen by moon at 3/18/2024, 10:51:34 PM
     **/
    @Trace(operationName = "M3约定：是与否")
    @Tags({@Tag(key = "参数", value = "arg[0]"),
            @Tag(key = "返回值", value = "returnedObj")})
    public ImplementEightReceivingFieldRespDto implementEightReceivingField(ImplementEightReceivingFieldReqDto reqDto) {
        return BeanUtil.toBean(reqDto, ImplementEightReceivingFieldRespDto.class);
    }

    /**
     * code:receptionService
     * name:M3约定100
     * desc:undefined
     * gen by moon at 4/25/2024, 2:13:17 AM
     **/
    @Trace(operationName = "M3约定100")
    @Tags({@Tag(key = "参数", value = "arg[0]"),
            @Tag(key = "返回值", value = "returnedObj")})
    public ImplementSixReceivingFieldRespDto implementSixReceivingField(ImplementSixReceivingFieldReqDto reqDto) {
        return BeanUtil.toBean(reqDto, ImplementSixReceivingFieldRespDto.class);
    }

    /**
     * code:receptionService
     * name:M3接收目标完成数与完成率出参
     * desc:undefined
     * gen by moon at 5/2/2024, 3:00:36 AM
     **/
    @Trace(operationName = "M3接收目标完成数与完成率出参")
    @Tags({@Tag(key = "参数", value = "arg[0]"),
            @Tag(key = "返回值", value = "returnedObj")})
    public ImplementElevenReceivingFieldRespDto implementElevenReceivingField(ImplementElevenReceivingFieldReqDto reqDto) {
        return BeanUtil.toBean(reqDto, ImplementElevenReceivingFieldRespDto.class);
    }

    /**
     * code:endlessLoop
     * name:M3执行死循环(特殊方法）
     * desc:undefined
     * gen by moon at 5/27/2024, 4:33:43 PM
     **/
    @Trace(operationName = "M3执行死循环(特殊方法）")
    @Tags({@Tag(key = "参数", value = "arg[0]"),
            @Tag(key = "返回值", value = "returnedObj")})
    public ImplementEndlessLoopRespDto implementEndlessLoop(ImplementEndlessLoopReqDto reqDto) {
        // TODO ruizhe skai dong ; 5/27/2024, 4:33:43 PM
        return new ImplementEndlessLoopRespDto();
    }

    /**
     * code:end
     * name:M3执行跳出循环（特殊方法)
     * desc:undefined
     * gen by moon at 5/27/2024, 4:33:45 PM
     **/
    @Trace(operationName = "M3执行跳出循环（特殊方法)")
    @Tags({@Tag(key = "参数", value = "arg[0]"),
            @Tag(key = "返回值", value = "returnedObj")})
    public ImplementEndLoopRespDto implementEndLoop(ImplementEndLoopReqDto reqDto) {
        // TODO ruizhe skai dong ; 5/27/2024, 4:33:45 PM
        return new ImplementEndLoopRespDto();
    }
    //手工接入方法
}
